package com.ceair.utils.structMapper;

import com.ceair.entity.SysRole;
import com.ceair.entity.vo.role.SysRoleVO;
import org.mapstruct.Mapper;

/**
 * @author wangbaohai
 * @ClassName SysRoleStructMapper
 * @description: 角色接口映射转换器
 * @date 2025年02月26日
 * @version: 1.0.0
 */
@Mapper
public interface SysRoleStructMapper {

    /**
     * 使用MapStruct库获取SysRoleStructMapper的实例
     * MapStruct是一个代码生成器，用于简化在Java bean类型之间的映射
     * 它通过自动生成映射代码来减少手动编写转换代码的需求
     *
     * @see org.mapstruct.factory.Mappers
     * @see SysRoleStructMapper
     */
    SysRoleStructMapper INSTANCE = org.mapstruct.factory.Mappers.getMapper(SysRoleStructMapper.class);

    SysRoleVO toVO(SysRole sysRole);

    SysRole toEntity(SysRoleVO sysRoleVO);

    com.ceair.entity.vo.SysRoleVO toApiVO(SysRole sysRole);

}
